package com.ywq.wechatordersys.service;

import com.ywq.wechatordersys.data.ProductInfo;
import com.ywq.wechatordersys.dto.CartDTO;
import org.springframework.data.domain.Pageable;

import java.util.ArrayList;
import java.util.List;

/**
 * 商品
 */
public interface ProductInfoService {

    /**
     * 添加商品
     */
    ProductInfo addProduct(ProductInfo productInfo);

    /**
     * 删除商品
     */
    ProductInfo delProduct(String id);


    /**
     * 修改商品
     */
    ProductInfo editProduct(ProductInfo productInfo);

    /***
     * 加库存
     */
    ProductInfo plushStock(String id, Integer stock);

    /**
     * 减库存
     */
    ProductInfo minusStock(String id, Integer stock);

    void addStock(List<CartDTO> cartDTOList);
    void minStock( List<CartDTO> cartDTOS);

    /**
     * 查询商品  单个
     */
    ProductInfo getProduct(String id);

    /**
     * 查询商品  多个
     */
    List<ProductInfo> getProducts(List<String> ids);

    /**
     * 查询商品  分页
     */
    List<ProductInfo> getProducts(Pageable pageable);

    /**
     * 查询商品 上架的
     */
    List<ProductInfo> getAllUpProducts();


}
